package com.bitoon.basketdudes.jpa;

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

/**
 * @author paco FELC 2012
 * @version 2.7
 * Información de los equipos con nivel>14 que participan en la WBCStar
 *
 */
@Table(name = "elo", schema="rankings")
@Entity
@NamedQueries({
    @NamedQuery(name = "Elo.findByEquipoId" , query = "SELECT c FROM Elo c WHERE c.equipo_id=:equipo_id"),
    @NamedQuery(name = "Elo.findByZona"     , query = "SELECT c FROM Elo c WHERE c.zona=:zona")})


public class Elo implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    //@GeneratedValue(strategy = GenerationType.AUTO)
    private Integer equipo_id;

    @Basic(optional = false)
    @Column(name = "elo")
    private float elo;

    @Basic(optional = false)
    @Column(name = "zona_id")
    private int zona;

    @Basic(optional = false)
    @Column(name = "division")
    private int division;

    @Basic(optional = false)
    @Column(name = "division_puntos")
    private int division_puntos;

    @Basic(optional = false)
    @Column(name = "ganados")
    private int ganados;

    @Basic(optional = false)
    @Column(name = "perdidos")
    private int perdidos;

    @Column(name = "ganados_elo")
    private int ganados_elo;

    @Column(name = "perdidos_elo")
    private int perdidos_elo;

    @Column(name = "ultimos_jugados")
    private int ultimos_jugados;

    public Integer  getEquipoId() { return equipo_id; }
    public void     setEquipoId(Integer valor) { this.equipo_id = valor;  }

    public float    getElo()            {  return elo;    }
    public void     setElo( float valor){  elo = valor;   }

    public int      getZona()       { return zona; }
    public void     setZona(int v)  { zona = v;    }

    public int      getDivision()       { return division; }
    public void     setDivision(int v)  { division = v;    }

    public int      getDivisionPuntos()       { return division_puntos; }
    public void     setDivisionPuntos(int v)  { division_puntos = v;    }

    public int      getGanados()        { return ganados; }
    public void     setGanados(int v)   { ganados = v;    }

    public int      getPerdidos()       { return perdidos; }
    public void     setPerdidos(int v)  { perdidos = v;    }

    public int      getGanadosElo()        { return ganados_elo; }
    public void     setGanadosElo(int v)   { ganados_elo = v;    }

    public int      getPerdidosElo()       { return perdidos_elo; }
    public void     setPerdidosElo(int v)  { perdidos_elo = v;    }

    public int      getUltimosJugados()       { return ultimos_jugados; }
    public void     setUltimosJugados(int v)  { ultimos_jugados = v;    }
    
    
    public Elo() {
    }

    public Elo ( Integer valor) {
        equipo_id       = valor;
        elo             = 1000;
        zona            = 0;
        division        = 0;
        division_puntos = 0;
        ganados         = 0;
        perdidos        = 0;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (equipo_id != null ? equipo_id.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof Elo)) {
            return false;
        }
        Elo other = (Elo) object;
        if ((this.equipo_id == null && other.equipo_id != null) ||
            (this.equipo_id != null && !this.equipo_id.equals(other.equipo_id))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "com.bitoon.basketdudes.jpa.Elo[id=" + equipo_id + "]";
    }

}
